﻿#region Software License
/**************************************************************/
/*          Business of Software Consulting                   */
/*          FREE SOFTWARE LICENSE                             */
/**************************************************************/
/*  Directory Manifest Generator                              */
/*  by: Mike Cating                                           */
/*  © 2009 Business of Software Consulting                    */
/*                                                            */
/* BUSINESS OF SOFTWARE CONSULTING DISCLAIMS ALL WARRANTIES,  */
/* RESPONSIBILITIES, AND LIABILITIES ASSOCIATED WITH          */
/* USE OF THIS CODE IN ANY WAY, SHAPE, OR FORM                */
/* REGARDLESS HOW IMPLICIT, EXPLICIT, OR OBSCURE IT           */
/* IS. IF THERE IS ANYTHING QUESTIONABLE WITH REGARDS         */
/* TO THIS SOFTWARE BREAKING AND YOU GAIN A LOSS OF           */
/* ANY NATURE, WE ARE NOT THE RESPONSIBLE PARTY. USE          */
/* OF THIS SOFTWARE CREATES ACCEPTANCE OF THESE TERMS         */
/*                                                            */
/* USE OF THIS CODE MUST RETAIN ALL COPYRIGHT NOTICES         */
/* AND LICENSES (MEANING THIS TEXT).                          */
/*                                                            */
/**************************************************************/
#endregion

using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
using System.IO;

namespace BOSTools.DirectoryManifestGenerator
{
    public class DirectorySpec
    {
        private string _directoryPath;
        private List<FileInfo> _filePaths;

        public string DirectoryPath
        {
          get { return _directoryPath; }
        }

        public string NextFilePath
        {
            get
            {
                if (_filePaths.Count == 0)
                {
                    return null;
                }
                else
                {
                    string result = _filePaths[0].FullName;
                    _filePaths.RemoveAt(0);

                    return result;
                }
            }
        }

        public DirectorySpec( string directoryPath, IEnumerable<FileInfo> filePaths )
        {
            _directoryPath = directoryPath;
            _filePaths = new List<FileInfo>(filePaths);
        }
        
    }
}
